package com.sinodata.bsm.common.vo;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * DefaultEventRule entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "DEFAULT_EVENT_RULE")
public class DefaultEventRule implements java.io.Serializable {

    /**
     * serialVersionUID
     */
    private static final long serialVersionUID = 5608824843583170952L;

    // Fields    
    private Long id;
    private Long resTypeId;
    private Long eventTypeId;
    private Integer level;
    private String expr;
    private Integer duration;
    private String msg;
    private String remarks;
    private String vailTime;
    private Integer filterDuration;
    private Integer confirmDuration;
    private String keyWord;
    private Integer status;
    private String objectExpr;

    // Constructors

    /** default constructor */
    public DefaultEventRule() {
    }

    /** minimal constructor */
    public DefaultEventRule(Long id) {
        this.id = id;
    }

    /** full constructor */
    public DefaultEventRule(Long id, Long resTypeId, Long eventTypeId, Integer level, String expr, Integer duration, String msg, String remarks, String vailTime, Integer exprIsDefault, Integer msgIsDefault, Integer filterDuration, Integer confirmDuration, String keyWord, Integer status, String objectExpr) {
        this.id = id;
        this.resTypeId = resTypeId;
        this.eventTypeId = eventTypeId;
        this.level = level;
        this.expr = expr;
        this.duration = duration;
        this.msg = msg;
        this.remarks = remarks;
        this.vailTime = vailTime;
        this.filterDuration = filterDuration;
        this.confirmDuration = confirmDuration;
        this.keyWord = keyWord;
        this.status = status;
        this.objectExpr = objectExpr;
    }

    @Id
    @Column(name = "ID", unique = true, nullable = false, precision = 18, scale = 0)
    public Long getId() {
        return this.id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    @Column(name = "RES_TYPE_ID", precision = 18, scale = 0)
    public Long getResTypeId() {
        return this.resTypeId;
    }

    public void setResTypeId(Long resTypeId) {
        this.resTypeId = resTypeId;
    }

    @Column(name = "EVENT_TYPE_ID", precision = 18, scale = 0)
    public Long getEventTypeId() {
        return this.eventTypeId;
    }

    public void setEventTypeId(Long eventTypeId) {
        this.eventTypeId = eventTypeId;
    }

    @Column(name = "LEVEL_", precision = 1, scale = 0)
    public Integer getLevel() {
        return this.level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    @Column(name = "EXPR", length = 512)
    public String getExpr() {
        return this.expr;
    }

    public void setExpr(String expr) {
        this.expr = expr;
    }

    @Column(name = "DURATION", precision = 9, scale = 0)
    public Integer getDuration() {
        return this.duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    @Column(name = "MSG", length = 1024)
    public String getMsg() {
        return this.msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    @Column(name = "REMARKS", length = 1024)
    public String getRemarks() {
        return this.remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    @Column(name = "VAIL_TIME", length = 256)
    public String getVailTime() {
        return this.vailTime;
    }

    public void setVailTime(String vailTime) {
        this.vailTime = vailTime;
    }

    @Column(name = "FILTER_DURATION", precision = 9, scale = 0)
    public Integer getFilterDuration() {
        return filterDuration;
    }

    public void setFilterDuration(Integer filterDuration) {
        this.filterDuration = filterDuration;
    }

    @Column(name = "CONFIRM_DURATION", precision = 9, scale = 0)
    public Integer getConfirmDuration() {
        return confirmDuration;
    }

    public void setConfirmDuration(Integer confirmDuration) {
        this.confirmDuration = confirmDuration;
    }

    @Column(name = "KEY_WORD", length = 1024)
    public String getKeyWord() {
        return keyWord;
    }

    public void setKeyWord(String keyWord) {
        this.keyWord = keyWord;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Column(name = "STATUS", precision = 1, scale = 0)
    public Integer getStatus() {
        return status;
    }

    @Column(name = "OBJECT_EXPR", length = 512)
    public String getObjectExpr() {
        return objectExpr;
    }

    public void setObjectExpr(String objectExpr) {
        this.objectExpr = objectExpr;
    }

    @Override
    public String toString() {
        return "DefaultEventRule [id=" + id + ", resTypeId=" + resTypeId + ", eventTypeId=" + eventTypeId + ", level=" + level + ", expr=" + expr + ", duration=" + duration + ", msg=" + msg + ", remarks=" + remarks + ", vailTime=" + vailTime + "filterDuration=" + filterDuration + "confirmDuration" + confirmDuration + "keyWord=" + keyWord + "status=" + status + "objectExpr=" + objectExpr + "]";
    }

}